Introduction

This web page was created in support of the papers

  • Three Monte Carlo programs of polarized light transport into scattering media: part I
  • and
  • Three Monte Carlo programs of polarized light transport into scattering media: part II

  • The three Monte Carlo programs portrayed in the papers are availabe here for download with some instructions.


    Unpolarized light Monte Carlo programs have been around for some time. Some of them are available here.

    The Polarized light Monte Carlo programs described here keep track of the status of polarization of light traveling through a scattering media. In the Monte Carlo programs presented here the scatterers are microspheres. These codes use a Mie scattering program to calculate the scattering coefficients of the scattering matrix.

    An important issue in Polarized light Monte Carlo is the tracking of the polarization reference frame. We show three different methods to do so

    Installing and running the programs

    These programs were developed in C programming language, they were compiled and tested in Red Hat Linux 7 and MacOsX-Unix (we were also able to run them in a Knoppix environment)

    All programs were tested in Linux Red Hat, Knoppix, and MacOSX under the Unix terminal

    Here are step by step instructions on how to run these programs

    • Download the Monte Carlo code you want to try

    • Unzip it or untar it

      >unzip -iquv.08.03.zip

      >untar -cf -iquv.08.03.tar

    • Read the README file that has a lot of information I will not repeat here

    • Open a terminal window

      For mac users it looks like this

      You can also find the terminal in Applications/Utilities/Terminal.app

    • Find the directory where you put the Monte Carlo program

    • Make the program by typing make at the prompt

    • Ignore the warnings

    • You are now ready to run your Monte Carlo program, just type ./iquv the propt

    • You are done! This program produces 16 images. Launch H corresponds to a field whose status of polarization is parallel to the reference frame (Stokes Vector [1 1 0 0]), Launch V is for perpendicular (Stokes Vector [1 -1 0 0]), Launch P is for 45 degrees (Stokes Vector [1 0 1 0]), and Launch R is for right circular polarized (Stokes Vector [1 0 0 1]).

    • For every launched Stokes vector 4 images are created corresponding to the reflected 4 elements of the Stokes vector IQUV, so for Launch H you will have HI.dat HQ.dat HU.dat HV.dat, Launch V you will have VI.dat VQ.dat VU.dat VV.dat, and so forth